home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48hor2 / makerom.doc < prev    next >
Text File  |  1995-03-31  |  3KB  |  104 lines

  1. (Comp.sys.hp48) 
  2. Item: 245 by mheiskan@hut.fi [Mika Heiskanen] 
  3. Subj: MAKEROM.EXE bugged 
  4. Date: 10 Mar 1993 
  5.  
  6. [Note: MAKEROM is on Goodies Disk #4.  If you use the HP48-based 
  7. library builders instead, like LIB.LIB on Goodies Disk #8, then you 
  8. don't have to worry about the bug in MAKEROM.  -jkh-] 
  9.  
  10. After some experimentation & studying of MAKEROM.EXE outputs seems like 
  11. MAKEROM.EXE is bugged as far as these words are concerned: 
  12.  
  13.          NAME    <label> 
  14.          sNAME   <label> <string> 
  15.          tNAME   <label> <string> 
  16.  
  17. From rplcomp.doc: 
  18. >              NAME - the global label and hash name are the same. 
  19. >              xNAME - the global label is the hash name with 'x' 
  20. >          prefixed. 
  21. >              sNAME - the global label and hash entry are independently 
  22. >          specified. 
  23. >              tNAME - specifies that an additional hash name belongs to 
  24. >          the given label. 
  25.  
  26. RPLCOMP handles these words correctly and SASM also outputs correct info to 
  27. the .ext file, but MAKEROM does not use the .ext file correctly. This is what 
  28. a small test library dumped to the .ext file: 
  29.  
  30. >X4D1                    @ xROMID 4D1 
  31. >4TEST HASH              @ sNAME TEST HASH 
  32. >4xBLAH BLAH             @ xNAME BLAH 
  33. >3HUH HUH                @ NAME HUH 
  34. >6HUH HUHHUH             @ tNAME HUH HUHHUH 
  35. >0NULLTEST NULLTEST      @ NULLNAME NULLTEST     (+ EXTERNAL NULLTEST) 
  36.  
  37. Clearly 1st column is the type of the data described on the line followed 
  38. immediately by the label, then possible hash name. 
  39.  
  40. sNAME, xNAME and NAME all output this to the code: 
  41.  
  42. >        CON(6)  =~label         @ library and command numbers 
  43. >=label 
  44.  
  45. (xNAME outputs 'xlabel' instead of label) 
  46.  
  47. So far quite obvious, but the hash/link table produced by MAKEROM doesn't look 
  48. very good: 
  49.  
  50. >oBleN3 
  51. >        CON(2)  #3 
  52. >        NIBASC  \HUH\ 
  53. >        CON(3)  2 
  54. >oBleN4 
  55. >        CON(2)  #4 
  56. >        NIBASC  \BLAH\ 
  57. >        CON(3)  1 
  58. >        CON(2)  #4 
  59. >        NIBASC  \HASH\ 
  60. >        CON(3)  0 
  61. >oBleN6 
  62. >        CON(2)  #6 
  63. >        NIBASC  \HUHHUH\ 
  64. >        CON(3)  3               <--- should be 2 
  65.  
  66. tNAME HUH HUHHUH has created a new romptr instead of assigning a new hashname 
  67. for HUH. 
  68.  
  69. Troubles continue: 
  70.  
  71. >=~xHASH  EQU     #4D1+4096*0            @ Should be =~TEST 
  72. >        CON(5)  (*)-(oBleN4)-13 
  73. >=~xBLAH  EQU     #4D1+4096*1 
  74. >        CON(5)  (*)-(oBleN4)-0 
  75. >=~xHUH  EQU      #4D1+4096*2            @ Should be =~HUH 
  76. >        CON(5)  (*)-(oBleN3)-0 
  77. >=~xHUHHUH  EQU   #4D1+4096*3            @ Shouldn't be here 
  78. >        CON(5)  (*)-(oBleN6)-0          @ Shouldn't be here 
  79.  
  80. MAKEROM has used the hash name instead of the label (.ext file). Also 'x' has 
  81. been forced to the name (Try "emacs makerom.exe") 
  82.  
  83. And even more: 
  84. >=LinK4D1 
  85. >        CON(5)  =DOHSTR 
  86. >        REL(5)  enDLink 
  87. >        REL(5)  =xHASH          @ Should be =TEST 
  88. >        REL(5)  =xBLAH  
  89. >        REL(5)  =xHUH                   @ Should be =HUH 
  90. >        REL(5)  =xHUHHUH                @ Shouldn't be here 
  91. >        REL(5)  =NULLTEST 
  92. >enDLink 
  93.  
  94. Again hash name is used and 'x' forced. (And the romptr 'created' by tNAME is 
  95. referred in the link table too.) 
  96.  
  97. -->      sNAME, tNAME, NAME are unusable with MAKEROM.EXE 
  98.  
  99.  
  100.          Any volunteers to make a fix? HP? 
  101.  
  102. -- 
  103. --->     Mika Heiskanen, mheiskan@vipunen.hut.fi 
  104.